﻿Imports System.Windows.Forms
Imports DNP.GestionComercial.BE
Imports DNP.GestionComercial.BL
Imports DNP.GestionComercial.Util
Imports DNP.GestionComercial.FormBase
Public Class frmBusProducto
    Inherits DNP.GestionComercial.FormBase.frmBusqueda
#Region "variables"
    Dim oMsg As New sisMensaje
#End Region
#Region "Iniciar página "
    Public Sub New()

        ' Llamada necesaria para el diseñador.
        InitializeComponent()
        ' lblTitulo.Text = "Mantenimiento de Productos"
        'Me.tbpLista.Text = "Lista de Productos"


        Listar()

    End Sub
    Private Sub frmBusProducto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

#End Region

#Region "funciones "
    Private Sub Listar()

        Dim oberespuesta As New RespuestaBE
        Dim olstEntidad As New List(Of PersonaBE)
        Dim oblEntidad As New ProductoBL
        Dim obeParametro As New PARAMETROBE
        obeParametro.PARAMETRO01 = txtEntidad.Text
        oberespuesta = oblEntidad.listarProducto(obeParametro)
        If oberespuesta.Respuesta Then
            FormatGrid()
            grdLista.DataSource = oberespuesta.ValorRertono 'olstEntidad
            grdLista.Refresh()
        Else
            oMsg.showMsgWarning(oberespuesta.Mensaje)
            MsgBox(oberespuesta.Mensaje)
        End If
    End Sub
#End Region
#Region "Eventos Grilla"
    Private Sub FormatGrid()
        grdLista.AutoGenerateColumns = False
        grdLista.Columns.Clear()
        grdLista.Columns.Add("NPRD_CODIGO", "Código")
        grdLista.Columns.Add("DESLINEA", "Linea")
        grdLista.Columns.Add("DESSUBLINEA", "Sub Linea")
        grdLista.Columns.Add("CPRD_DESCRIP_CORTA", "Producto")
        grdLista.Columns.Add("DESMARCA", "Marca")
        grdLista.Columns.Add("desUniVenta", "Unidad de Venta")
        grdLista.Columns.Add("NPRD_PRECIO", "Precio Unitario")
        grdLista.Columns.Add("NPRD_STOCK", "Stock")
        grdLista.Columns.Add("COM_UNIDAD_VENTA", "COM_UNIDAD_VENTA")
        grdLista.Columns.Add("CPRD_DESCRIPCION", "Descripcion")
        grdLista.Columns.Add("CPRD_CODIGOBARRA", "CodigoBarra")

        grdLista.Columns(0).DataPropertyName = "NPRD_CODIGO"
        grdLista.Columns(1).DataPropertyName = "DESLINEA"
        grdLista.Columns(2).DataPropertyName = "DESSUBLINEA"
        grdLista.Columns(3).DataPropertyName = "CPRD_DESCRIP_CORTA"
        grdLista.Columns(4).DataPropertyName = "DESMARCA"
        grdLista.Columns(5).DataPropertyName = "desUniVenta"
        grdLista.Columns(6).DataPropertyName = "NPRD_PRECIO"
        grdLista.Columns(7).DataPropertyName = "NPRD_STOCK"
        grdLista.Columns(8).DataPropertyName = "COM_UNIDAD_VENTA"
        grdLista.Columns(9).DataPropertyName = "CPRD_CODIGOBARRA"

        grdLista.Columns(0).Width = 60
        grdLista.Columns(1).Width = 120
        grdLista.Columns(2).Width = 120
        grdLista.Columns(3).Width = 160
        grdLista.Columns(4).Width = 120
        grdLista.Columns(5).Width = 120
        grdLista.Columns(6).Width = 160
        grdLista.Columns(7).Width = 160
        grdLista.Columns(8).Width = 0
        grdLista.Columns(8).Visible = False
        grdLista.Columns(9).Width = 0
        grdLista.Columns(9).Visible = False


        grdLista.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(3).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter

        grdLista.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        grdLista.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter


    End Sub
    Public Overrides Sub grdLista_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles grdLista.KeyDown

        If Asc(e.KeyValue).ToString = Asc(Keys.Enter).ToString Then

            Dim row As Integer = grdLista.CurrentRow.Index

            Dim cell As DataGridViewCell
            cell = grdLista.Rows(grdLista.CurrentRow.Index).Cells(grdLista.CurrentCell.ColumnIndex)

            If cell.Selected Then
                vRespuesta.PARAMETRO01 = grdLista.Rows(row).Cells(0).Value.ToString().Trim() ' ruc
                vRespuesta.PARAMETRO02 = grdLista.Rows(row).Cells(3).Value.ToString().Trim() ' razon social
            End If

            If (vRespuesta.PARAMETRO01 Is Nothing) Then
                MsgBox("Seleccione un Proveedor")
            Else
                DialogResult = Windows.Forms.DialogResult.OK
                Me.Hide()
            End If

        End If

    End Sub
    Public Overrides Sub grdLista_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Dim intfila As Integer
        intfila = grdLista.CurrentRow.Index
        If intfila <> -1 Then
            If grdLista.Rows(intfila).Selected Then
                vRespuesta.PARAMETRO01 = grdLista.Rows(intfila).Cells(0).Value.ToString().Trim() ' codigo producto

                vRespuesta.PARAMETRO02 = grdLista.Rows(intfila).Cells(3).Value.ToString().Trim() ' descripcion
                vRespuesta.PARAMETRO03 = grdLista.Rows(intfila).Cells(6).Value.ToString().Trim() ' precio
                vRespuesta.PARAMETRO04 = grdLista.Rows(intfila).Cells(5).Value.ToString().Trim() ' descripcion unidad venta
                vRespuesta.PARAMETRO05 = grdLista.Rows(intfila).Cells(8).Value.ToString().Trim() ' codigo unidad venta
                vRespuesta.PARAMETRO06 = grdLista.Rows(intfila).Cells(9).Value.ToString().Trim() ' codigo barra
            End If
        End If
    End Sub

#End Region


    
    
    Public Overrides Sub btnCerrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        Close()
    End Sub

    Public Overrides Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        If (vRespuesta.PARAMETRO01 Is Nothing) Then
            MsgBox("Seleccione un Producto")
        Else
            DialogResult = Windows.Forms.DialogResult.OK
            Me.Hide()
        End If

    End Sub

    
    Private Sub buCerrar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCerrar.Click
        Me.Close()
    End Sub
    Public Overrides Sub txtEntidad_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs)
        Listar()
    End Sub
   
End Class